Skip to content

Update PDF template for version and date metadata#71

Merged
Malcolmnixon merged 4 commits intomainfrom
copilot/update-pdf-template
Jan 28, 2026
Merged

Update PDF template for version and date metadata#71
Malcolmnixon merged 4 commits intomainfrom
copilot/update-pdf-template

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Jan 27, 2026

Pull Request

Description

Aligns PDF generation with TestResults and SarifMark repository implementations. PDFs now display version and date metadata in headers.

Template changes (docs/template/template.html):

  • Split @page @top-center into @top-left (title) and @top-right (version)
  • Added .version CSS class and string-set rule
  • Changed pre block overflow-x to overflow for better PDF rendering

Workflow changes (.github/workflows/build.yaml):

  • Added --metadata version and --metadata date parameters to all pandoc invocations
  • Kept default PowerShell shell (matching SarifMark implementation)
  • Retained mermaid-filter.cmd extension for Windows compatibility

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Code quality improvement

Related Issues

Implements feature request for updated PDF template based on TestResults repository.

Pre-Submission Checklist

Before submitting this pull request, ensure you have completed the following:

Build and Test

  • Code builds successfully: dotnet build --configuration Release
  • All tests pass: dotnet test --configuration Release
  • Code produces zero warnings

Code Quality

  • Code formatting is correct: dotnet format --verify-no-changes
  • New code has appropriate XML documentation comments
  • Static analyzer warnings have been addressed

Quality Checks

Please run the following checks before submitting:

  • Spell checker passes: cspell "**/*.{md,cs}"
  • Markdown linter passes: markdownlint "**/*.md"
  • YAML linter passes: yamllint '**/*.{yml,yaml}'

Testing

  • Added unit tests for new functionality
  • Updated existing tests if behavior changed
  • All tests follow the AAA (Arrange, Act, Assert) pattern
  • Test coverage is maintained or improved

Documentation

  • Updated README.md (if applicable)
  • Updated ARCHITECTURE.md (if applicable)
  • Added code examples for new features (if applicable)
  • Updated requirements.yaml (if applicable)

Additional Notes

Added docversion to .cspell.json dictionary. Workflow aligned with SarifMark implementation for proper filter execution on Windows. No functional changes to code - workflow and template only.

Original prompt

This section details on the original issue you should resolve

<issue_title>[Feature]: Updated PDF template</issue_title>
<issue_description>### Problem Statement

The Pandoc template for PDFs should be updated

Proposed Solution

Review https://github.com/demaconsulting/TestResults and:

  • Update the pandoc template in /docs/template
  • Update the build-docs job to:
    • Replace pwsh with bash shell
    • Pass version and date metadata parameters to pandoc

Alternatives Considered

No response

Usage Examples

Benefits

Improved document quality

Priority

Low - Nice to have

Willingness to Contribute

Yes, I can submit a pull request

Additional Context

No response

Checklist

  • I have searched existing issues to ensure this is not a duplicate
  • I have provided a clear description of the feature
  • I have explained why this feature would be useful</issue_description>

Comments on the Issue (you are @copilot in this section)


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI and others added 2 commits January 27, 2026 22:00
Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Copilot AI changed the title [WIP] Update Pandoc template for PDF generation Update PDF template for version and date metadata Jan 27, 2026
Copilot AI requested a review from Malcolmnixon January 27, 2026 22:04
@Malcolmnixon
Copy link
Copy Markdown
Member

@copilot The build-docs job failed - I believe because the mermaid-filter command was not specified correctly. Please closely compare the job with https://github.com/demaconsulting/SarifMark and align how commands are executed.

…estore .cmd extension)

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Copy link
Copy Markdown
Contributor Author

Copilot AI commented Jan 27, 2026

@copilot The build-docs job failed - I believe because the mermaid-filter command was not specified correctly. Please closely compare the job with https://github.com/demaconsulting/SarifMark and align...

Fixed in commit 1dd5797. The issue was using shell: bash with mermaid-filter - removed the bash shell specification and restored the .cmd extension to match SarifMark's implementation. The pandoc steps now use the default PowerShell shell on Windows with the correct filter path.

@Malcolmnixon Malcolmnixon marked this pull request as ready for review January 28, 2026 11:50
@Malcolmnixon Malcolmnixon merged commit e1d4f18 into main Jan 28, 2026
11 checks passed
@Malcolmnixon Malcolmnixon deleted the copilot/update-pdf-template branch January 28, 2026 11:50
Copilot AI added a commit that referenced this pull request Mar 27, 2026
- Rename all agent files to *.agent.md naming convention with proper
  YAML frontmatter (tools field, user-invocable, kebab-case names)
- Add code-review.agent.md (PR #59)
- Update AGENTS.md: add Code Review Agent, use @agent call syntax
- Update CONTRIBUTING.md: agent glob to *.agent.md, lint script
- Migrate .cspell.json → .cspell.yaml with policy header (PR #63)
- Migrate .markdownlint-cli2.jsonc → .markdownlint-cli2.yaml (PR #64)
- Update .yamllint.yaml with standards header, .venv/ ignore (PR #64)
- Rewrite lint.sh/lint.bat to self-install npm/pip dependencies (PR #61)
- Update package.json with cspell and markdownlint-cli2 (PR #61)
- Add pip-requirements.txt pinning yamllint==1.38.0 (PR #61)
- Update .gitignore to add .venv/ (PR #61)
- Add .gitattributes for LF line endings (PR #71)
- Update build.yaml: replace 3 lint actions with Node.js+Python+lint.sh (PR #61)
- Update release.yaml: remove 'Move buildnotes' step (PR #75)"

Agent-Logs-Url: https://github.com/demaconsulting/SonarMark/sessions/faf526d1-b8d3-4731-a959-9925242e1f94

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Malcolmnixon added a commit that referenced this pull request Mar 27, 2026
… TemplateDotNetTool (#105)

* Initial plan

* feat: update repo-consistency agent with latest simplified version from TemplateDotNetTool

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Agent-Logs-Url: https://github.com/demaconsulting/SonarMark/sessions/8afcbf80-130d-4fbd-b4ed-bbf6829f1265

* feat: apply template improvements from TemplateDotNetTool PRs #58-#75

- Rename all agent files to *.agent.md naming convention with proper
  YAML frontmatter (tools field, user-invocable, kebab-case names)
- Add code-review.agent.md (PR #59)
- Update AGENTS.md: add Code Review Agent, use @agent call syntax
- Update CONTRIBUTING.md: agent glob to *.agent.md, lint script
- Migrate .cspell.json → .cspell.yaml with policy header (PR #63)
- Migrate .markdownlint-cli2.jsonc → .markdownlint-cli2.yaml (PR #64)
- Update .yamllint.yaml with standards header, .venv/ ignore (PR #64)
- Rewrite lint.sh/lint.bat to self-install npm/pip dependencies (PR #61)
- Update package.json with cspell and markdownlint-cli2 (PR #61)
- Add pip-requirements.txt pinning yamllint==1.38.0 (PR #61)
- Update .gitignore to add .venv/ (PR #61)
- Add .gitattributes for LF line endings (PR #71)
- Update build.yaml: replace 3 lint actions with Node.js+Python+lint.sh (PR #61)
- Update release.yaml: remove 'Move buildnotes' step (PR #75)"

Agent-Logs-Url: https://github.com/demaconsulting/SonarMark/sessions/faf526d1-b8d3-4731-a959-9925242e1f94

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>

* feat: add ReviewMark integration (PR #58 from TemplateDotNetTool)

- Add .reviewmark.yaml with SonarMark-specific review sets
- Add demaconsulting.reviewmark 0.2.0 to .config/dotnet-tools.json
- Update .versionmark.yaml: add reviewmark entry, pre-release regex on all tools
- Update .gitignore: exclude generated review plan/report docs
- Create docs/code_review_plan/ (definition.yaml, title.txt, introduction.md)
- Create docs/code_review_report/ (definition.yaml, title.txt, introduction.md)
- Update build.yaml: add reviewmark to versionmark capture, self-validation,
  review plan/report generation, HTML/PDF generation, and upload"

Agent-Logs-Url: https://github.com/demaconsulting/SonarMark/sessions/34424117-a082-453c-accd-84cd9b08f24e

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>

* Apply TemplateDotNetTool PRs #39, #47, #50 consistency updates

- PR #39: Add CLA sentence to README.md License section
- PR #47: Update Code Analysis ItemGroup comments in main csproj to use
  inline child-element comment style; add inline comments for
  coverlet.collector and Code Analysis packages in test csproj
- PR #50: Fix Assert.HasCount parameter order in CONTRIBUTING.md
  (expectedCount before collection); fix UTF-8 encoding description
  in CONTRIBUTING.md and AGENTS.md (remove BOM reference)

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>

* feat: apply TemplateDotNetTool PR #65 folder restructure and remaining template PRs

- PR #65: Rename docs folders to standard names:
  - docs/buildnotes/ -> docs/build_notes/
  - docs/quality/ -> docs/code_quality/
  - docs/requirements/ + docs/justifications/ -> docs/requirements_doc/
  - docs/tracematrix/ -> docs/requirements_report/
- PR #65: Update build.yaml paths for all renamed folders
- PR #65: Update .gitignore with new folder paths
- PR #65: Update .cspell.yaml words (build_notes, code_quality, etc.)
- PR #65: Update .reviewmark.yaml (add bin exclusion, update comment)
- PR #24: Update CONTRIBUTING.md and PR template with unit test/self-validation terminology
- PR #27/#65: Update PR template linting section to use lint.sh

Agent-Logs-Url: https://github.com/demaconsulting/SonarMark/sessions/6186d6a3-a30a-42f2-a075-5c1d62feb92c

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>

* feat: update release.yaml to reference build_notes.md (PR #65)

Agent-Logs-Url: https://github.com/demaconsulting/SonarMark/sessions/6186d6a3-a30a-42f2-a075-5c1d62feb92c

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>

* Update .github/workflows/build.yaml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix: add shell: bash to all Pandoc HTML generation steps in build.yaml

All Pandoc steps using $(date +'%Y-%m-%d') bash command substitution now
explicitly specify shell: bash so they work correctly on windows-latest runners.

Agent-Logs-Url: https://github.com/demaconsulting/SonarMark/sessions/58acfc2e-a04e-43d2-a61e-038edb985428

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Co-authored-by: Malcolm Nixon <Malcolm.nixon@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature]: Updated PDF template

2 participants